gm8fandomcom_pl-20200214-history
Co nowego
=Co nowego?= Game Maker 8 posiada wiele usprawnień w stosunku do wersji 7.0. Poniżej znajduje się lista najważniejszych z nich. Niekompatybilności Splash screeny z tekstem nie wyświetlają już grafik. Jednakże możliwe jest teraz wyświetlanie stron WWW (np. z grafikami). Zaszło wiele zmian w stosunku funkcji dotyczacych wczytywania zasobów graficznych (sprites, backgrounds). Stało się to z uwagi na fakt, iż silnik graficzny Game Makera używa obecnie nowego systemu dla tych zasobów. Jeżeli Twoja gra używa dużej ilości skryptów doczytujących grafiki w locie w trakcie działania programu, rekomenduje się pozostanie przy wersji 7.0 Game Makera. Jeżeli używasz Paczek Rozszerzeń, musisz je przeinstalować. Poprawiono bardzo ważny bug polegający na dwukrotnym wykonywaniu zdarzenia kolizji jeżeli dwa obiekty miały ustawione to zdarzenie dla siebie nawzajem. Możliwe, że niektóre gry nieświadomie wykorzystują ten błąd na swoją korzyść i gry te nie będą działać teraz prawidłowo. Nowości Game Maker domyślnie wyświetla nowości po starcie programu. W tym miejscu będą pojawiać się informacje o nowych wersjach programu, nowych zasobach, konkursach, oraz sztuczki i wskazówki dla twórców gier. Newsy są pokazywane tylko raz dziennie. W wersji PRO można je wyłączyć. Zawsze można je sprawdzić za pomocą opcji News z menu Help. Zachęcamy do sprawdzania regularnie czy nie ma wśród nich jakichś ważnych komunikatów. Samouczek Game Maker posiada wbudowany samouczek dla początkujących. Wyświetlany jest on z prawej strony ekranu. Zaawansowani użytkownicy mogą go oczywiście wyłączyć. Ponieważ to okno wymaga większej przestrzeni ekranowej dla programu, GM domyślnie uruchamiany jest na pełnym ekranie. Jednakże wystarczy zmienić rozmiar okna, a ustawienie zostanie zapamiętane i od następnego razu program będzie już uruchamiany w żądanym rozmiarze. Kanały alpha dla grafik W nowej wersji Game Makera grafiki mogą używać kanałów alpha. Dzięki temu można tworzyć znacznie lepiej wyglądające grafiki. Grafiki PNG w tym formacie są teraz prawidłowo wczytywane. Edytor grafik został całkowicie przebudowany, włączając w to wiele nowych efektów i opcji rysowania. W oknie wyboru pliku sprite'a dodane zostało wyświetlanie animacji. Dołączyliśmy też do programu sporą ilość wysokiej jakości grafik których możesz używać za darmo w swoich grach. Ulepszone wykrywanie kolizji Jest teraz więcej opcji sprawdzania kolizji. Można wybrać nowe kształty obszaru sprawdzania kolizji, oraz lepiej zarządzać jego rozmiarem. The sub-image of the sprite can have a combined mask można ustawić zależność kolizji od wartości kanałów alpha. Ekrany dodatkowe Dodano nową funkcję splash_show_web(url,delay), która wyświetla stronę www w oknie gry. Można też wyświetlać lokalne strony. Dzięki temu powstały świetne możliwości do tworzenia np. stron z pomocą. Dodano też przycisk zamykania dla tych okien. Dodano też kilka nowych opcji do pokazywania różnych wersji ekranów dodatkowych oraz zmiany ich ustawień (funkcje Show Video oraz Show Webpage zostały usunięte ponieważ nowe funkcje je zawierają. Działają jednak dla starych gier). Wyzwalacze Dodano nowy typ zdarzeń: Wyzwalacze. Wyzwalacze to zdarzenia, które można zdefiniować samemu. Nadajesz im nazwę i warunek wystąpienia stworzony w GML. Potem można używać ich we wszystkich obiektach tak jak pozostałych zdarzeń. Dzięki temu łatwo rozszerzysz funkcjonalność Game Makera. Linie czasu Linie czasu zostały rozszerzone. Okno właściwości ma kilka dodatkowych guzików, np. spread out the moments and to delete or duplicate ranges of moments. Linie czasu mogą być teraz zatrzymywane, restartowane czy też odtwarzanie w przeciwną stronę. Mogą też się automatycznie zapętlać. Import i eksport zasobów. Możliwość łączenia projektów została zastąpiona przez dużo bardziej praktyczny system do importu i eksportu zasobów. Użytkownik może wybrać, które zasoby eksportować do pliku (.gmres). Następnie zasoby mogą być importowane do innej gry. Reguła jest taka, że tylko jeden zasób może istnieć pod daną nazwą. Jeżeli jest konflikt nazw przy imporcie zasobów, użytkownik może wybrać czy zachować oryginalne, zastąpić nowym, wybrać to, które było ostatnio zmieniane, albo zatrzymać oba (nierekomendowane). Aby użyć trzeciej opcji, wszytkie zasoby zapamiętują teraz czas ich ostatniej modyfikacji. Przepisany edytor skryptów / kodu. Wbudowany edytor skryptu/kodu został całkowicie przepisany, tak aby łatwiej się w nim pisało. Posiada funkcję podpowiadania funkcji, wyświetla podpowiedź dla kolejnych argumentów, oznacza nawiasy, ulepszono kolorowanie, dodano numery linii, sprawdzanie błedów w locie, definiowanie własnych wstawek kodu oraz zaawansowaną funkcję znajdywania i zamiany. Przyspieszenie działania Prędkość gier używających kodu została poprawiona. Możliwy jest nawet wzrost wydajności do 100%. Czas wczytywania gier został również nieco poprawiony, także dla plików wykonywalnych. Inne zmiany Poczyniono wiele zmian i dodano wiele nowych funkcji. Oto najważniejsze. * Można używać ikon wyższej jakości do gier. * Stałe mogą być teraz definiowane w osobnym okienku (zamiast w Global Game Settings). Dzięki temu okno pozostaje widoczne np. podczas pisania skryptów. Możesz też wczytać czy zapisać stałe do pliku. * Także dołączone pliki nie są dłużej wyświetlane w oknie Global Game Settings, ale w osobnym okienku. * Wiele małych usprawnień. * Dodano funkcję random_range(x1,x2), irandom(x) oraz irandom_range(x1,x2). Dwie ostatnie zwracają wynik tylko jako liczbę całkowitą. * Dodano funkcję mouse_wheel_up, mouse_wheel_down. * Dodano funkcję set_application_title(title) aby ustawić tytuł programu pokazywany na pasku zadań. * Dodano funkcję file_text_eoln(). * Dodano zmienną tylko do odczytu debug_mode. * Dodano opcję, która wyłącza wygaszacze ekranu, czy stan uśpienia/hibernacji, kiedy gra jest uruchomiona * Dodano funkcję disk_size(drive), disk_free(drive) a także zmienną gamemaker_version. * ... Naprawione błędy Następujące błędy zostały poprawione. Wiele mniejszych błędów również zostało poprawionych, ale nie znalazły się na tej liście. * Komunikat błędu, gdy uruchamialiśmy program na Viście z aktywnym AUC, został usunięty. * Poprawiono błąd, który ukrywał niektóre pola formularzy przy wciśniętym klawiszu Alt pod Vistą. * Poprawiono błąd nie wyświetlających się podpowiedzi dla zdarzeń obiektów oraz linii czasu. * Gdy otwieramy projekt lub zaczynamy nowy, nie pokazują sie już osobne okienka dla każdego zasobu, jaki jest otwarty. * Corrected a (sort of) error with the precision of comparison operators in code. * Solved bug with a bad background for the Applies To field in code editor. * Tworzenie pliku wykonywalnego teraz poprawnie sprawdza ilość plansz. * Zastąpiono kombinację Ctrl+Alt na Shift+Ctrl ponieważ część z nich jest wymagana w niemieckich klawiaturach. Poprawiono też skrót dla tworzenia spritów. * W trybie prostym skróty dla ukrytych zasobów i ich wpisy w menu są wyłączone. Menu skyptów też jest ukryte. * Poprawiono błąd funkcji window_get_color(). * Zwiększono limit wierzchołków przy rysowaniu prymitywów 3D dla modeli z 1000 do 32000. * Poprawiono błąd z ignorowaniem głębi-z dla wierzchołków modeli. * Poprawiono zdarzenia Outside View oraz Boundary View. * Gry będą teraz działać nawet gdy nie ma karty dźwiękowej (po wyświetleniu ostrzeżenia). * Gdy okno staje się nieaktywne, zdarzenia I/O, jak wciśnięcie klawisza, zostają wyczyszczone. * Poprawiono i ulepszono zgłaszanie błędów dla skryptów Creation Code dla plansz i instancji na planszach. * room_title oraz room_tile_add_ext teraz prawidłowo ustawiają mieszanie kolorów dla białego i zwracają prawidłowy index kafli. * Prawidłowo ustawiana jest nazwa aplikacji względem nazwy pliku. * Poprawiono błąd draw_line_width_color dla długości 0. * Tiles with negative scale factors are now correctly drawn. * Poprawiono zapis i odczyt liczb w plikach tekstowych. Obecnie jako separator części dziesiętnej używana jest kropka, jednakże przy odczycie akceptowana jest kropka jak i przecinek. * Grupa zasobów, która jest pusta, ma teraz prawidłową ikonę zamkniętego folderu. * Rozwiazano problem z miganiem drzewa zasobów. * Funkcje string oraz string_format nie powodują więcej zawieszenia gdy liczba jest zbyt wielka i zwracają zmienną ERROR. * Długie ścieżki są prawidłowo rysowane za pomocą draw_path. * Zwijanie drzewa zasobów teraz działa prawidłowo. * Dla warunku if wartość 0.5 jest teraz traktowana jako prawda. * Rozwiązano błąd który występował czasem przy wciskaniu klawisza tyldy ~. * funkcja sing() zwraca prawidłowo 0, gdy argumentem jest 0. * W edytorze ścieżek, podczas wyboru plaszy, kliknięcie poza menu nie czyści już planszy. * Nieco zwiększono okno debugowe aby mieściły się wszystkie ikony. Siatka watch zmienia rozmiar gdy zmieniamy rozmiar okna. * Poprawiono bug, który wieszał program gdy ustawiliśmy wysokość okna na 0. * Poprawiono błędy dla ds_grid_add/multiply/set_grid_region. * Odwołanie do skryptów i funkcji teraz zwraca wartość 0, jeżeli one same nic nie zwracają (np. brak słowa return). * Poprawiono poważny błąd, który wywoływał dwa razy akcję kolizji jeżeli obiekty miały ustawione zdarzenie kolizji dla siebie nawzajem. * Poprawiono błąd dla draw_text_ext z pustymi liniami (wiele #) oraz problem z rysowaniem tekstu który zawierał CR-LF (gdy tekst zapisano w kilku liniach w edytorze kodu). * Pliki tylko do odczytu są teraz prawidłowo załączane do projektu, nie powodując błędów. * ...